package com.ruoyi.customerSample.service;



import com.ruoyi.customerSample.domain.SampleSendDetails;
import com.ruoyi.customerSample.domain.SampleSendInfo;

import java.util.List;
import java.util.Map;

/**
 * 来样登记信息Service接口
 * 
 * @author ruoyi
 * @date 2023-07-05
 */
public interface ISampleSendInfoService 
{
    /**
     * 查询来样登记信息
     * 
     * @param id 来样登记信息ID
     * @return 来样登记信息
     */
    public SampleSendInfo selectSampleSendInfoById(String id);

    /**
     * 获取明细信息
     */
    public SampleSendInfo selectSampleSendInfoByCompany(String client, String reDate);

    /**
     * 获取某送样单位日期数据
     */
    public List<String> selectReDateByCompany(String client);

    /**
     * 查询来样登记信息列表
     * 
     * @param sampleSendInfo 来样登记信息
     * @return 来样登记信息集合
     */
    public List<SampleSendInfo> selectSampleSendInfoList(SampleSendInfo sampleSendInfo);

    /**
     * 数据导入
     */
    public void importSampleSendInfo(Map<List<Object>, List<SampleSendDetails>> groupingMap);

    /**
     * 新增来样登记信息
     * 
     * @param sampleSendInfo 来样登记信息
     * @return 结果
     */
    public int insertSampleSendInfo(SampleSendInfo sampleSendInfo);

    /**
     * 修改来样登记信息
     * 
     * @param sampleSendInfo 来样登记信息
     * @return 结果
     */
    public int updateSampleSendInfo(SampleSendInfo sampleSendInfo);

    /**
     * 批量删除来样登记信息
     * 
     * @param ids 需要删除的来样登记信息ID
     * @return 结果
     */
    public int deleteSampleSendInfoByIds(String[] ids);

    /**
     * 删除来样登记信息信息
     * 
     * @param id 来样登记信息ID
     * @return 结果
     */
    public int deleteSampleSendInfoById(String id);
}
